package me.zhengjie.modules.system.domain.req;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import me.zhengjie.base.PageBaseReq;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @author wx
 * @email
 * @date 2025-02-19 09:45:51
 */

@Builder
@NoArgsConstructor
@AllArgsConstructor
@Data
public class SysUserBusinessReqQueryDTO extends PageBaseReq implements Serializable {

    private static final long serialVersionUID = 1L;


    @ApiModelProperty(value = "")
    private Long id;

    @ApiModelProperty(value = "企业类型(A:企业,B:个体工商户)")
    private String merchLevel;

    @ApiModelProperty(value = "商户名称")
    private String merchName;

    @ApiModelProperty(value = "门店经营名称")
    private String merchPName;

    @ApiModelProperty(value = "统一社会信用代码")
    private String licenseNo;

    @ApiModelProperty(value = "营业执照主体类型")
    private String licensePapersType;

    @ApiModelProperty(value = "营业执照登记机关")
    private String licenseIssuedAuth;

    @ApiModelProperty(value = "营业执照有效期开始日期")
    private LocalDateTime licenseStartTime;

    @ApiModelProperty(value = "营业执照有效期结束日期")
    private LocalDateTime licenseEndTime;

    @ApiModelProperty(value = "注册资金")
    private String registerCapital;

    @ApiModelProperty(value = "注册地址")
    private String licenseAddr;

    @ApiModelProperty(value = "经营范围")
    private String busiScope;

    @ApiModelProperty(value = "mcc(eg:一般类-[5211]建材和木材-)")
    private String mcc;

    @ApiModelProperty(value = "mcc经营类目")
    private String mccIdPath;

    @ApiModelProperty(value = "mcc名称")
    private String mccNamePath;

    @ApiModelProperty(value = "营业执照地区编码(eg:2200,2210,2214")
    private String regionIdPath;

    @ApiModelProperty(value = "地区名称(eg:辽宁省,沈阳市,法库县")
    private String regionNamePath;

    @ApiModelProperty(value = "详细经营地址")
    private String busiAddr;

    @ApiModelProperty(value = "法人手机号")
    private String legalMobile;

    @ApiModelProperty(value = "法人姓名")
    private String legalName;

    @ApiModelProperty(value = "法人证件号码")
    private String legalCertNo;

    @ApiModelProperty(value = "法人民族")
    private String legalNation;

    @ApiModelProperty(value = "法人性别")
    private String legalGender;

    @ApiModelProperty(value = "法人证件签发机关")
    private String legalIssuedBy;

    @ApiModelProperty(value = "法人证件地址")
    private String legalAddr;

    @ApiModelProperty(value = "法人证件有效期开始日期")
    private LocalDateTime legalCertDateStart;

    @ApiModelProperty(value = "法人证件有效期结束日期")
    private LocalDateTime legalCertDateEnd;

    @ApiModelProperty(value = "联系手机号码")
    private String contactsMobile;

    @ApiModelProperty(value = "联系人邮箱")
    private String contactsEmail;

    @ApiModelProperty(value = "联系人姓名")
    private String contactsName;

    @ApiModelProperty(value = "联系人证件号")
    private String contactsCertNo;

    @ApiModelProperty(value = "联系人民族")
    private String contactsNation;

    @ApiModelProperty(value = "联系人性别")
    private String contactsGender;

    @ApiModelProperty(value = "联系人证件签发机关")
    private String contactsIssuedBy;

    @ApiModelProperty(value = "联系人证件地址")
    private String contactsAddr;

    @ApiModelProperty(value = "联系人证件号有效期开始日期")
    private LocalDateTime contactsCertDateStart;

    @ApiModelProperty(value = "联系人证件号有效期结束日期")
    private LocalDateTime contactsCertDateEnd;

    @ApiModelProperty(value = "结算类型(G:对公,S:对私)")
    private String accountSettType;

    @ApiModelProperty(value = "结算卡号")
    private String accountPrivateCardNo;

    @ApiModelProperty(value = "对私结算账户户名")
    private String accountPrivateName;

    @ApiModelProperty(value = "对私结算账户银行预留手机号")
    private String accountPrivateMobile;

    @ApiModelProperty(value = "对私结算账户证件号码")
    private String accountPrivateCertNo;

    @ApiModelProperty(value = "对私结算民族")
    private String accountPrivateNation;

    @ApiModelProperty(value = "对私结算性别")
    private String accountPrivateGender;

    @ApiModelProperty(value = "对私结算证件签发机关")
    private String accountPrivateIssuedBy;

    @ApiModelProperty(value = "对私结算证件地址")
    private String accountPrivateAddr;

    @ApiModelProperty(value = "对私结算证件有效期开始日期")
    private LocalDateTime accountPrivateCertDateStart;

    @ApiModelProperty(value = "对私结算证件有效期结束日期")
    private LocalDateTime accountPrivateCertDateEnd;

    @ApiModelProperty(value = "开户行支行")
    private String accountBankNo;

    @ApiModelProperty(value = "开户行所在地")
    private String accountBankName;

    @ApiModelProperty(value = "对公结算账户户名")
    private String accountCorporateName;

    @ApiModelProperty(value = "对公结算卡号")
    private String accountCorporateCardNo;

    @ApiModelProperty(value = "信用卡手续费费率(%)")
    private BigDecimal ccFeeRate;

    @ApiModelProperty(value = "借记卡手续费费率(%)")
    private BigDecimal dcFeeRate;

    @ApiModelProperty(value = "借记卡手续费最大值(元)")
    private BigDecimal dcFeeMax;

    @ApiModelProperty(value = "微信手续费费率(%)")
    private BigDecimal wechatPayFeeRate;

    @ApiModelProperty(value = "支付宝手续费费率(%)")
    private BigDecimal alipayFeeRate;

    @ApiModelProperty(value = "云闪付信用卡手续费费率(%)")
    private BigDecimal ycFreeFeeRate;

    @ApiModelProperty(value = "云闪付借记卡手续费费率(%)")
    private BigDecimal ydFreeFeeRate;

    @ApiModelProperty(value = "D0手续费费率(%)")
    private BigDecimal dlFeeRate;

    @ApiModelProperty(value = "D0单笔提现(元)")
    private BigDecimal dlSingleCashDrawal;

    @ApiModelProperty(value = "sn")
    private String termSn;

    @ApiModelProperty(value = "对私结算身份证(头像)")
    private String privateIdCardFront;

    @ApiModelProperty(value = "对私结算身份证(国徽)")
    private String privateIdCardBack;

    @ApiModelProperty(value = "银行卡正面")
    private String bankCardFront;

    @ApiModelProperty(value = "手持身份证合照")
    private String handIdCard;

    @ApiModelProperty(value = "营业执照")
    private String businessLicense;

    @ApiModelProperty(value = "银行开户许可证")
    private String bankAccountOpeningLicense;

    @ApiModelProperty(value = "联系人身份证(头像)")
    private String contactsIdCardFront;

    @ApiModelProperty(value = "联系人身份证(国徽)")
    private String contactsIdCardBack;

    @ApiModelProperty(value = "法人身份证(头像)")
    private String legalPersonIdCardFront;

    @ApiModelProperty(value = "法人身份证(国徽)")
    private String legalPersonIdCardBack;

    @ApiModelProperty(value = "门头照图片")
    private String doorPhoto;

    @ApiModelProperty(value = "场地照图片")
    private String venuePhoto;


}
